[INFO] cloning repository https://github.com/bozso/rusper
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bozso/rusper" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbozso%2Frusper", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbozso%2Frusper'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 77cb59f5bf8a5d5c3dc9f60e58b1a3591f6371ba
[INFO] checking bozso/rusper against master#9610dfe5a9a731ced1ea4923ecbd0c57fe367898 for beta-170-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbozso%2Frusper" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/bozso/rusper on toolchain 9610dfe5a9a731ced1ea4923ecbd0c57fe367898
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/bozso/rusper
[INFO] finished tweaking git repo https://github.com/bozso/rusper
[INFO] tweaked toml for git repo https://github.com/bozso/rusper written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/bozso/rusper already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded hecs v0.3.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 29418b6de0d87cfaf9c0535b6ce059fddc922ffc21b9a7bd3393af590421a43b
[INFO] running `Command { std: "docker" "start" "-a" "29418b6de0d87cfaf9c0535b6ce059fddc922ffc21b9a7bd3393af590421a43b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "29418b6de0d87cfaf9c0535b6ce059fddc922ffc21b9a7bd3393af590421a43b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "29418b6de0d87cfaf9c0535b6ce059fddc922ffc21b9a7bd3393af590421a43b", kill_on_drop: false }`
[INFO] [stdout] 29418b6de0d87cfaf9c0535b6ce059fddc922ffc21b9a7bd3393af590421a43b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 25a79aebc3c5c53c4319a0e8348ffe104dafcfffbb517579551a8170536af2e6
[INFO] running `Command { std: "docker" "start" "-a" "25a79aebc3c5c53c4319a0e8348ffe104dafcfffbb517579551a8170536af2e6", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling syn v1.0.60
[INFO] [stderr]     Checking ahash v0.4.7
[INFO] [stderr]     Checking hashbrown v0.9.1
[INFO] [stderr]     Checking hecs v0.3.2
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling thiserror-impl v1.0.23
[INFO] [stderr]     Checking thiserror v1.0.23
[INFO] [stderr]     Checking rusper v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0515]: cannot return reference to function parameter `v`
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^ returns a reference to data owned by the current function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0515]: cannot return reference to function parameter `v`
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^ returns a reference to data owned by the current function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |              ^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |              ^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 19 |         T: Sync + Send + 'a + 'static,
[INFO] [stdout]    |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0311]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the parameter type `T` must be valid for the anonymous lifetime defined here...
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:17:34
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn get<'a, T>(&'a self, key: &Self::Key) -> Option<&'a T>
[INFO] [stdout]    |                                  ^^^^^^^^^^
[INFO] [stdout] note: ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 17 ~     fn get<'b, 'a, T>(&'a self, key: &'b Self::Key) -> Option<&'a T>
[INFO] [stdout] 18 |     where
[INFO] [stdout] 19 ~         T: Sync + Send + 'a + 'b,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0311]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the parameter type `T` must be valid for the anonymous lifetime defined here...
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:17:34
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn get<'a, T>(&'a self, key: &Self::Key) -> Option<&'a T>
[INFO] [stdout]    |                                  ^^^^^^^^^^
[INFO] [stdout] note: ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]   --> src/database/hecs_adaptor.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.get::<T>(key.0).ok().map(|v| v.deref())
[INFO] [stdout]    |                                           ^^^^^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound...
[INFO] [stdout]    |
[INFO] [stdout] 17 ~     fn get<'b, 'a, T>(&'a self, key: &'b Self::Key) -> Option<&'a T>
[INFO] [stdout] 18 |     where
[INFO] [stdout] 19 ~         T: Sync + Send + 'a + 'b,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0310, E0311, E0515.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0310`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0310, E0311, E0515.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0310`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rusper` (lib) due to 8 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rusper` (lib test) due to 8 previous errors
[INFO] running `Command { std: "docker" "inspect" "25a79aebc3c5c53c4319a0e8348ffe104dafcfffbb517579551a8170536af2e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25a79aebc3c5c53c4319a0e8348ffe104dafcfffbb517579551a8170536af2e6", kill_on_drop: false }`
[INFO] [stdout] 25a79aebc3c5c53c4319a0e8348ffe104dafcfffbb517579551a8170536af2e6
